package com.gxa.customer.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gxa.common.commons.JsonResult;
import com.gxa.common.commons.R;
import com.gxa.common.pojo.ClientInfo;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;

public interface ClientListBaseInformationService extends IService<ClientInfo> {
    //分页查询所有客户基本信息及所拥有的房产数量
    public JsonResult findAllClientBaseInformation(Integer currentPage, Integer pageSize);
    //新建客户基本信息
    R addClientBaseInformation(ClientInfo clientInfo);
    //编辑客户基本信息
    R updateClientBaseInformation(ClientInfo clientInfo);
    //删除客户信息
    R deleteClientBaseInformation(Long clientInfoId);
    //根据关键字（编号/名称/拼音/护照号）分页搜索客户信息
    JsonResult findClientBaseInformationByKeyWordPage(Integer currentPage,Integer pageSize,String keyWord);
    //查询所有国家
    R findAllCountry();
    //客户名下添加国家（复选框）
    R addCountryToClient(Map<String,Object> map);
    //导入客户信息
    R importExcelToClientInfo(MultipartFile file) throws Exception;
    //导出客户信息
    R findAllclientToExcel(HttpServletRequest request, HttpServletResponse response) throws Exception;
    //根据客户id查询客户基本信息
    R findClientBaseInformationById(Long clientInfoId);
    //根据客户id查询客户添加的所有国家
    R findCountryByClientId(Long clientInfoId );
}
